// var wherestr={};

// 搜索框折叠/展开
var domRoot = $('#content1').length > 0 ? $('#content1') : $('body');
initSearchMenu(domRoot);

function initSearchMenu(domBelong) {
	if(domBelong.length <= 0) {
		return;
	}
	if(domBelong.find('.content-right').length)judgeOverFlow(domBelong);//判断搜索区高度是否溢出
	domBelong.find(".search-top").css("background",JSON.parse(window.localStorage.getItem('layuiAdmin')).theme.color.header);
	domBelong.find(".layui-expand-east").css("background",JSON.parse(window.localStorage.getItem('layuiAdmin')).theme.color.header);
	domBelong.find(".layui-expand-east").css('height',$(window).height());
	
	window.onresize = function () {//监听页面尺寸变化，改变搜索区高度
		domBelong.find(".layui-expand-east").css('height',$(window).height());
		if(domBelong.find('.content-right').length)judgeOverFlow(domBelong);//判断搜索区高度是否溢出
	}
	
	domBelong.find(".menuBtn i").on('click', function() {//隐藏显示侧边
		var btn = $(this);
		if (btn.hasClass('layui-icon-spread-left'))menuHide(domBelong);
		else menuShow(domBelong);
		domBelong.find(".search-top").animate({ width: 'toggle' }); 
		domBelong.find(".content-right form").toggle();
		domBelong.find(".layui-expand-east").toggle();
	})
}
function menuShow(domBelong) {//显示侧边
	domBelong.find(".content-right").animate({ width: '290px' });
	domBelong.find(".mid-content").animate({ right: '290px' });
}
function menuHide(domBelong) {//隐藏侧边
	domBelong.find(".content-right").animate({ width: '26px' });
	domBelong.find(".mid-content").animate({ right: '30px' });
}
function judgeOverFlow(domBelong){//判断搜索区高度是否溢出
	var maxHeight = $(window).height() - 135;//搜索区最大高度
	domBelong.find(".layuiadmin-card-header-auto").css('max-height',maxHeight);
	if(domBelong.find(".layuiadmin-card-header-auto")[0].clientHeight > maxHeight){//溢出最大高度
		domBelong.find(".layuiadmin-card-header-auto").css('display','inline-block');
		domBelong.find(".layuiadmin-card-header-auto").css('overflow-y','auto');
	}else{
		domBelong.find(".layuiadmin-card-header-auto").css('display','block');
		domBelong.find(".layuiadmin-card-header-auto").css('overflow-y','');
	}
}
function serachRender(){//查询条件初始渲染集合
	//当前显示的查询字段(包含.search-field)----日期渲染
	$(".search-field").each(function(i,v){
		var fid = $(v).attr("id"), fft = $(v).attr("fft"), ffct = $(v).attr("ffct");
		if(fft == 't_year'){//年份
			if(ffct == 't_between')laydate.render({elem: '#'+fid,type:'year',trigger:'click',range: '~'});
			else laydate.render({elem: '#'+fid,type:'year',trigger:'click'});
		}
		if (fft == 't_monthly') { //月份
			if(ffct == 't_between')laydate.render({elem: '#'+fid,type:'month',trigger:'click',range: '~'});
			else laydate.render({elem: '#'+fid,type:'month',trigger:'click'});
		}
		if(fft == 't_date'){//日期
			if(ffct == 't_between')laydate.render({elem: '#'+fid,type:'date',trigger:'click',range: '~'});
			else laydate.render({elem: '#'+fid,type:'date',trigger:'click'});
		}
		if(fft == 't_datetime'){//日期时间
			if(ffct == 't_between')laydate.render({elem: '#'+fid,type:'datetime',trigger:'click',range: '~'});
			else laydate.render({elem: '#'+fid,type:'datetime',trigger:'click'});
		}
	});
	$(".search-repeat").on('click',function(obj){
		console.log("obj",obj)
		$('[name='+obj.currentTarget.dataset.name+']').val('');//清空
		$('[name='+obj.currentTarget.dataset.name+']').removeAttr('checked');//清空
		form.render();
	})
	//搜索按钮
	$('#btn-search').on('click', function () {
		sessionStorage.removeItem(moduleTable + 'checkdata');
		table.reload('dhtable', {page: {curr: 1},where:getWherestr()});
	});
	//固定查询下拉渲染
	$(".dropdown").each(function(i,v){
		var fieldName = $(v).attr("fieldName");
		var dropdownStr = $('#dropdown_'+fieldName).text();
		if(moduleTable=='TCW_CAPITALREGISTERCLAIM' && fieldName=='ClaimStatus'){
			dropdownStr= '<select id="claimStatus" name="claimStatus" lay-filter="sort_select" class="search-field" fft="t_dropdown">\n' +
				'<option></option>\n' +
				'<option value="0">未认领</option>\n' +
				'<option value="1">已认领</option>\n' +
				'</select>';
			$(v).append(dropdownStr);
			$('#claimStatus').val('0');
		}else {
			$(v).append(dropdownStr);
		}
		changeDropdown(fieldName);
		form.render();
	})
	//监听下拉框——添加条件
	form.on('select(fft)', function(obj){
		fieldAddMore(this);
	});
	$(document).keydown(function (e) {//监听键盘
		switch(e.keyCode){
			case 13://回车键
				$("#btn-search").trigger("click");
				break;
			case 27://esc键
				$("#btn-reset").trigger("click");
				break;
		}
	});
}
//添加搜索条件
function fieldAddMore(obj){
	appendSearch(obj,2);//生成查询条件代码（1：顶部、2：右侧）
	judgeOverFlow($('body'));
	//删除条件
	$(".remove-this").unbind();
	$(".remove-this").click(function(){
		$(this).parents('.layui-form-item').remove();
		form.render();
		judgeOverFlow($('body'));
	})
}
//下拉可编辑
function changeDropdown(lx){
	form.on('select('+lx+'_select)', function (data) {//选择移交单位 赋值给input框
		$("#"+lx).val(data.value);
		form.render();//修复下拉框选中后无法消失的问题
	});
	//下拉可编辑，编辑时过滤选项
	window.inputSearch=function() {
		$("#"+lx).val($("#"+lx).val());
		var value = $("#"+lx).val();
		$("#"+lx+"_select").val(value);
		form.render();
		$("#"+lx+"_select").next().find("dl").css({ "display": "block" });
		var dl = $("#"+lx+"_select").next().find("dl").children();
		var j = -1;
		for (var i = 0; i < dl.length; i++) {
			if (dl[i].innerHTML.indexOf(value) <= -1) {
				dl[i].style.display = "none";
				j++;
			}
			if (j == dl.length-1) {
				$("#"+lx+"_select").next().find("dl").css({ "display": "none" });
			}
		}
	}
}
//拼接搜索条件，页面存在多个form时可传入表单id或class，如：'.from1 '
function getWherestr(form=''){
	wherestr = {}
	var domRoot = form == '' ? $('body') : $(form);
	domRoot.find(".search-field").each(function(i,v){//当前显示的查询字段(包含.search-field)
		wherestr[v.name]=''
	});
	//动态获取条件的值
	$.each(wherestr,function(i,v){
		if((i.substring(i.length-2,i.length)=='_s' || i.substring(i.length-2,i.length)=='_e') && domRoot.find("#"+i).attr('fft') != 't_text'){
			if(!domRoot.find("#"+i.substring(0,i.length-2)).val())wherestr[i]="";
			return;//时间控件的衍生字段需跳出循环
		}
		var vs=domRoot.find("[name="+i+"]").val();
		switch(domRoot.find("#"+i).attr('fft')){
			case 't_checkcondition':
				if(domRoot.find("#"+i).prop("checked")){
					wherestr[i] = 1;
				}else{
					wherestr[i]='';
				}
				break;
			case 't_radio':
				if(domRoot.find("[name='"+i+"']:checked").val()){
					wherestr[i] = domRoot.find("[name='"+i+"']:checked").val()
				}else{
					wherestr[i]='';
				}
				break;
			case 't_date':
				wherestr[i+'_s']="";
				wherestr[i+'_e']="";
				if(domRoot.find("#"+i).attr('ffct')=='t_between' && !!$("#"+i).val()){//区间范围的需要切割，而且尾头多出了空格
					var st=vs.split('~');
					wherestr[i+'_s']=st[0].substring(0,st[0].length-1);
					wherestr[i+'_e']=st[1].substring(1,st[1].length);
				}else{
					vs?wherestr[i]=vs:wherestr[i]='';
				}
				break;
			case 't_datetime':
				wherestr[i+'_s']="";
				wherestr[i+'_e']="";
				if(domRoot.find("#"+i).attr('ffct')=='t_between' && !!$("#"+i).val()){//区间范围的需要切割，而且尾头多出了空格
					var st=vs.split('~');
					wherestr[i+'_s']=st[0].substring(0,st[0].length-1);
					wherestr[i+'_e']=st[1].substring(1,st[1].length);
				}else{
					vs?wherestr[i]=vs:wherestr[i]='';
				}
				break;
			case 't_text_area'://特殊输入框，以文本域代替，换行区分多个，如型号
				vs?wherestr[i]=vs.split(/[\n]/).join('@@'):wherestr[i]='';//换行替换成@@
				break;
			default:
				vs?wherestr[i]=vs:wherestr[i]='';
				break;
		}
	});
	if(typeof multiple != 'boolean' && moduleTable=='TP_PRODUCTINFO')wherestr['vCpFl'] = vCpFl;//产品选择页面不分类、产品信息库查询需要带上分类id
	return wherestr;
}